package com.yanboo.generator.utils;

import com.yanboo.generator.constant.DbType;
import org.apache.commons.configuration.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import javax.sql.DataSource;
import java.util.Map;

/**
 * sql字段转java
 */
public class ColUtil {
    private static final Logger log = LoggerFactory.getLogger(ColUtil.class);

    /**
     * 转换mysql数据类型为java数据类型
     *
     * @param type 数据库字段类型
     * @return String
     */
    static String cloToJava(String type,DbType dbType) {
        Configuration config = getConfig(dbType);
        assert config != null;
        return config.getString(type, "unknowType");
    }

    /**
     * 获取配置信息
     */
    public static PropertiesConfiguration getConfig(DbType dbType) {
        try {
            String dbTypeStr = dbType.name().toLowerCase();
            return new PropertiesConfiguration(String.format("generator.%s.properties",dbTypeStr));
        } catch (ConfigurationException e) {
            log.error(e.getMessage(), e);
        }
        return null;
    }
}
